Spatial decomposition-based repair of defects in boundary representations

ABSTRACT

A computing system may include a mesh access engine and a mesh repair engine. The mesh access engine may be configured to access a boundary representation of an object design, the boundary representation including a defect. The mesh repair engine may be configured to repair the boundary representation, including by converting the boundary representation into a spatial decomposition representation of the object design and converting the spatial decomposition representation of the object design back into a boundary representation form to obtain a repaired boundary representation of the object design.

BACKGROUND

Computer systems can be used to create, use, and manage data forproducts and other items. Examples of computer systems includecomputer-aided design (CAD) systems (which may include computer-aidedengineering (CAE) systems), computer-aided manufacturing (CAM) systems,visualization systems, product data management (PDM) systems, productlifecycle management (PLM) systems, and more. These systems may includecomponents that facilitate the design, configuration, and simulatedtesting of product structures and product manufacture.

BRIEF DESCRIPTION OF THE DRAWINGS

Certain examples are described in the following detailed description andin reference to the drawings.

FIG. 1 shows an example of a computing system that supports spatialdecomposition-based repair of defects in boundary representations.

FIG. 2 shows examples of spatial decomposition-based repairs that acomputing system may perform for a boundary representation.

FIG. 3 shows an example differences between a boundary representationand a repaired boundary representation generated by a mesh repairengine.

FIG. 4 shows another example of logic that a system may implement tosupport spatial decomposition-based repair of defects in boundaryrepresentations.

FIG. 5 shows an example of a computing system that supports spatialdecomposition-based repair of defects in boundary representations.

DETAILED DESCRIPTION

Modern computing systems may utilize boundary representations torepresent object shapes. A boundary representation may refer to anygeometric or topological description of an object boundary. As such, aboundary representation may include surface geometry in the form ofsurfaces, curves, points, edges, vertices, and the like. As an exampleboundary representation, a surface mesh (also referred to as a polygonmesh) may include a set of vertices and edges that form a plurality ofmesh facets, polygons, or surfaces. The plurality of mesh facets maytogether form the boundary of a 3D object. Aside from meshes, otherforms of boundary representations are contemplated herein as well,including any number of 2D or 3D boundary representations.

Generation and maintenance of boundary representations can becomputationally difficult. Many mesh models (including those importedfrom other systems) may include defects. Mesh defects may also beintroduced during mesh construction, whether caused by errors in amesh-generation algorithm, incomplete or inaccurate base data (e.g.,low-quality or low-resolution 3D image scans), and the like.Furthermore, maintaining the integrity of mesh boundaries can bechallenging, especially for complex shapes or high-resolution meshes.Mesh defects and poor-quality meshing may reduce the effectiveness orrobustness of solid modeling and CAD operations. Such issues cansimilarly affect other forms of boundary representations as well.

Manual repair of defects in boundary representations can be cumbersome,time-consuming, and error-prone. For example, different types of defectsmay require custom actions to specifically address a given defect.Defect identification (e.g., of gashes/slits, overlapping facets, etc.)may require specialized identification processes and applying speciallytailored repairs to the specific portion of a mesh at which identifieddefects are located. Defect-specific repair methods can involverecognition of specific defect symptoms and utilizing tailored repairmodels to add or remove mesh facets, many of which are computationallyintensive and inefficient. In some cases, surface mesh repair canrequire performance of multiple different defect identification andcustom repair processes, each with its own latency, parameters, andcomputational requirements.

The disclosure herein may provide systems, methods, devices, and logicfor spatial decomposition-based repair of defects in boundaryrepresentations. As described in greater detail below, the spatialdecomposition-based repair features disclosed herein may provide anautomated and robust defect repair capability with increased efficiencyand speed. In particular, defect repair may be performed by converting aboundary representation into a spatial decomposition representation andthen back into a boundary representation. In doing so, the featuresdescribed herein may provide a robust mechanism to repair defects inmeshed models at a fixed computational cost that may be (at times,significantly) lower than manual repair mechanisms or defect-specificmodels. Moreover, the spatial decomposition-based repair featuresdisclosed herein may be defect-agnostic, supporting defect repairwithout particularized identification of specific defects or pinpointingdefect locations. As such, the spatial decomposition-based repairfeatures may provide increased defect repair capabilities for multipledifferent defect types, and may do so with reduced computational costsand latency as compared to other defect-specific repair processes.

These and other spatial decomposition-based repair features andtechnical benefits are described in greater detail herein.

FIG. 1 shows an example of a computing system 100 that supports spatialdecomposition-based repair of defects in boundary representations. Thecomputing system 100 may take the form of a single or multiple computingdevices such as application servers, compute nodes, desktop or laptopcomputers, smart phones or other mobile devices, tablet devices,embedded controllers, and more. In some implementations, the computingsystem 100 implements or is part of a CAD system that supports thedesign, simulation, or processing of CAD data, including boundaryrepresentations of object designs.

As an example implementation to support any combination of the spatialdecomposition-based repair features described herein, the computingsystem 100 shown in FIG. 1 includes an mesh access engine 108 and a meshrepair engine 110. The computing system 100 may implement the engines108 and 110 (including components thereof) in various ways, for exampleas hardware and programming. The programming for the engines 108 and 110may take the form of processor-executable instructions stored on anon-transitory machine-readable storage medium and the hardware for theengines 108 and 110 may include a processor to execute thoseinstructions. A processor may take the form of single processor ormulti-processor systems, and in some examples, the computing system 100implements multiple engines using the same computing system features orhardware components (e.g., a common processor or a common storagemedium).

In operation, the mesh access engine 108 may access a boundaryrepresentation of an object design. The accessed boundary representationmay include any number of defects. In operation, the mesh repair engine110 may repair the boundary representation, including by converting theboundary representation into a spatial decomposition representation ofthe object design and converting the spatial decompositionrepresentation of the object design back into a boundary representationform to obtain a repaired boundary representation of the object design.

These and other spatial decomposition-based repair features according tothe present disclosure are described in greater detail next. Many of theexamples described herein using a surface mesh as an example form of aboundary representation. However, the spatial decomposition-based repairfeatures described herein may be consistently applied for any type ofboundary representation of any dimension (e.g., 2D faces, surfaces,curves, other 3D boundary representation forms, and the like).

FIG. 2 shows examples of spatial decomposition-based repairs that acomputing system may perform for a boundary representation. In theparticular example shown in FIG. 2, a computing system is illustrated inthe form of a mesh access engine 108 and a mesh repair engine 110.However, other system implementations are contemplated herein.

To support spatial decomposition-based repair, the mesh access engine108 may access a boundary representation 210. The boundaryrepresentation 210 may be in the form of a surface mesh or other meshgeometry. In FIG. 2, some of the object surfaces of a boundaryrepresentation 210 are shown, but note that the boundary representation210 in FIG. 2 is not illustrated with all of the detailed mesh facetingthat may be included as part of a surface mesh.

The boundary representation 210 accessed by the mesh access engine 108may include any number of defects. A defect may refer to anyimperfection in a boundary representation, some examples of which aredescribed in greater detail herein. To provide an illustrative example,a small section of the boundary representation 210 is enlarged in FIG. 2that depicts portions of a mesh facet 211 and a mesh facet 212. Theenlarged section of the boundary representation 210 also illustrates thedefect 215, which may be a slit or gash defect with a size smaller thana mesh resolution of the boundary representation 210. Other examples ofdefects that may be present in the boundary representation 210 includeinconsistently oriented facets (e.g., with incorrectly assigned facetorientations, such as neighboring facets with orientations that arenormal to one another), non-manifold facets (e.g., that may includevarious categories of un-manufacturable facets, such as two facets thatintersect at a single point, etc.), overlapping facets (e.g., two facetsthat intersect beyond facet edges or folded facets), or any combinationthereof.

The mesh repair engine 110 may repair any number of defects in theboundary representation 210, including the defect 215. To do so, themesh repair engine 110 may convert the boundary representation 210 (in aboundary representation form) into a spatial decompositionrepresentation 220. In contrast to a boundary representation, a spatialdecomposition representation may represent a volume or space indiscretized units and specify whether the discretized units are filled(whether partially or in whole) or not. Accordingly, the mesh repairengine 110 may convert the boundary representation 110 into thespatial-decomposition representation 220 by mapping the boundaryrepresentation 210 into a 3D space, discretizing the 3D space into 3Dunits (e.g., voxels), and representing the 3D space that includes theboundary representation 210 into a spatially-decomposed form.

In converting the boundary representation 210, the mesh repair engine110 may apply any number of spatial-decomposition operations,algorithms, processes, or computations. In some implementations, themesh repair engine 110 may convert the boundary representation 210 bydiscretizing a 3D space to a given discretization resolution and testingif discretized points or elements are on the object boundary, doing soto generate a spatial shell. Also, the type of spatial-decompositionoperations applied by the mesh repair engine 110 may depend on the formof the spatial-decomposition representation 220 (which may be aconfigurable parameter). In the example shown in FIG. 2, the mesh repairengine 110 converts the boundary representation 210 into a spatialdecomposition representation 220 in the form of an oct-tree. However,other spatial decomposition forms are contemplated herein, such as quadtrees, spatial occupation enumeration, exhaustive enumerations, binaryspace partition (BSP) trees, and more. Any type of spatial decompositionalgorithm or process is supported by the mesh repair engine 110 forconverting the boundary representation 210 to the spatial decompositionrepresentation 220.

The mesh repair engine 210 may remove the defect 215 (and various othermesh defects) through the converting of the boundary representation 210into the spatial decomposition representation 220. This may be the caseas many defects specific to meshes and other boundary representationsare not present or do not exist in spatial decompositionrepresentations. For instance, slit and gash defects smaller than thediscretization resolution used for the spatial decomposition conversionmay no longer appear in the spatial decomposition representation 220. Ina similar manner, the mesh repair engine 110 may remove any minisculemesh imperfections that are smaller than the discretization resolutionvia converting the boundary representation 210 into the spatialdecomposition representation 220, as such imperfections simply will benot represented in the spatial decomposition representations 220.

As another example of defect repair via spatial decomposition, the meshrepair engine 110 may remove folded facet defects and inconsistentlyoriented facet defects via the boundary representation conversionthrough spatial decomposition. This may be the case as the orientationof facets is not used in the computation of the spatial shell to producethe spatial decomposition representation 220. Explained in another way,the spatial decomposition representation 220 need not track orientationcharacteristics of meshes, facets, or surface geometries. As such, themesh repair engine 110 may construct the spatial decompositionrepresentation 220 from the boundary representation 210 regardless ofand without tracking/maintaining any erroneous facet orientations.

As yet another example, non-manifold defect conditions may be a propertyspecific to boundary representations. Non-manifold conditions or defectsdo not exist in spatial decomposition representations, and thus aconversion to the spatial decomposition representation 220 by the meshrepair engine 110 may, in effect, remove non-manifold defects from theobject design as represented in the spatial decomposition representation220.

In a general sense, the mesh repair engine 110 may remove defects fromthe boundary representation 210 by converting the boundaryrepresentation 210 into another form in which such defects do not exist,namely a spatial decomposition representation 220. The mesh repairengine 110 may thus obtain a representation of the object design (albeitin a different, spatial form) in which slit and gash defects,non-manifold defects, folded facet defects, and inconsistently orientedfacet defects no longer exist or apply. Accordingly, the mesh repairengine 110 may construct a spatial shell via spatial decomposition inthe form of a spatial decomposition representation 220 that is free fromthe defects that often plague boundary representations.

With a constructed spatial shell that is free of defects, the meshrepair engine 110 may convert the spatial decomposition representation220 back into a boundary representation form (e.g., a mesh) to obtain arepaired boundary representation 230. To do so, the mesh repair engine110 may use any number of spatial decompositionrepresentation-to-boundary representation processes or algorithms. Asillustrative examples, the mesh repair engine 110 may use marchingcubes, dual contouring, or other boundary representation generationalgorithms to construct the repaired boundary representation 230. Thesource data from which the repaired boundary representation 230 isgenerated (in this case, the spatial decomposition representation 220)may be free of boundary representation-specific defects. As such, theoutput boundary representation (that is, the repaired boundaryrepresentation 310) may likewise be free from the defects that werepresent in the input boundary representation 210. As such, the meshrepair engine 110 may repair the defect 215 (present in the boundaryrepresentation 210) such that the defect 215 is not present in therepaired boundary representation 230.

Note that the mesh repair engine 110 can repair the boundaryrepresentation 210 and generate the repaired boundary representation 230without expressly identifying the defect 215 in the boundaryrepresentation 210. That is, the mesh repair engine 110 need notspecifically identify the defect 215 in the boundary representation 210to repair the boundary representation 210. In a similar manner, the meshrepair engine 110 may repair the boundary representation 210 withoutdetermining a location of the defect 215 in the boundary representation215. As such, the spatial decomposition-based repair features describedherein may provide a more efficient, automated, and accurate mechanismto repair meshes and other boundary representations as compared todefect-specific repair models that only address or focus on specificdefective portions of a boundary representation.

Note also that the mesh repair engine 110 is capable of generating therepaired boundary representation 230 to be meshed differently from theboundary representation 210. In that regard, the mesh repair engine 110need not focus on repairing specific defective portions of an inputboundary representation, and may instead generate a completely newboundary representation to model an object design, one without thedefects present in the input boundary representation. Accordingly, therepaired boundary representation 230 converted from the spatialdecomposition representation 220 may have a different facet (e.g.,triangle or quadrilateral) count, different meshing layouts, a differentmesh resolution from the boundary representation 210, or any combinationthereof. Such features are described next in connection with FIG. 3.

FIG. 3 shows an example differences between a boundary representationand a repaired boundary representation generated by the mesh repairengine 110. In particular, FIG. 3 illustrates the boundaryrepresentation 210 and the repaired boundary representation 230described in FIG. 2, and further depicts various portions of theboundary representation and corresponding portions of the repairedboundary representation 230 to illustrate differences between theboundary representations that may result from spatialdecomposition-based repairs. As shown in FIG. 3, the boundaryrepresentation 210 and repaired boundary representation 310 may be thesame form (e.g., both as surface meshes), but differ in their specificimplementation (e.g., in their meshing).

A defective portion 310 of the boundary representation 210 is shown inFIG. 3, which includes mesh facets 211 and 212 as well as a defect 215.FIG. 3 also illustrates a corresponding portion 320 of the repairedboundary representation 230 that covers the same portion of the objectdesign as the defective portion 310. As the mesh repair engine 110 maygenerate the repaired the repaired boundary representation 230 from aspatial decomposition representation, the corresponding portion 320 (andthe repaired boundary representation 230 itself) may be generated as anentirely different mesh from the defective portion 310 (and the boundaryrepresentation 210 overall).

Accordingly, the corresponding portion 320 of the repaired boundaryrepresentation 230 may be meshed differently (e.g., with a finer meshresolution) than the defective region 310 of the boundary representation210 that the corresponding portion 320 corresponds to. As seen in FIG.3, the mesh facets 211 and 212 are no longer present in thecorresponding portion 320, which includes (portions of) other meshfacets with a different mesh layout and the corresponding portion 320 ismeshed at a finer mesh resolution than the defective portion 310. Evenif meshed at the same mesh resolution, the corresponding portion 320 maynonetheless be meshed differently, e.g., with mesh faces of differingalignment, shapes, or configurations. As such, the mesh repair engine110 may repair the boundary representation 210 and remove the defect 215by generating an entirely new mesh for an object design.

As another example of such a mesh difference, a non-defective portion330 of the boundary representation 210 is also illustrated in FIG. 3.The non-defective portion 330 includes the mesh facets 331 and 332, butdoes not include any mesh defects. Even so, the corresponding portion340 of the repaired boundary representation 230 for the same portion ofthe object design is meshed differently from non-defective portion 330of the boundary representation 210 (as seen in FIG. 3). Accordingly, themesh repair engine 110 may take an input boundary representation 210 andrepair the boundary representation 210 into the same form (e.g., also asa surface mesh), but in a different specific implementation.

As described herein, a computing system may repair defects present in aboundary representation through spatial decomposition. The spatialdecomposition-based repair features described herein may supportdefect-agnostic repairs in that specific defects, defect types, anddefect locations need not be identified in order to repair a boundaryrepresentation. Instead, spatially decomposing a boundary representationinto a spatial decomposition representation may, in effect, provide aprocess to remove and repair defects in the boundary representation.Converting the spatial decomposition representation back into a(n albeitdifferently meshed) boundary representation may provide an output mesh(or other boundary representation) in the same form as a defective orpoor quality mesh, but without slit and gash defects, non-manifolddefects, inconsistently oriented facet defects, and the like.Accordingly, the spatial decomposition-based repair features describedherein may provide a computationally fixed, efficient, elegant, andeffective mechanism to repair meshes and other types of boundaryrepresentations.

FIG. 4 shows another example of logic 400 that a system may implement tosupport spatial decomposition-based repair of defects in boundaryrepresentations. For example, the computing system 100 may implement thelogic 400 as hardware, executable instructions stored on amachine-readable medium, or as a combination of both. The computingsystem 100 may implement the logic 400 via the mesh access engine 108and the mesh repair engine 110, through which the computing system 100may perform or execute the logic 400 as a method to support spatialdecomposition-based repair of defects in boundary representations. Thefollowing description of the logic 400 is provided using the mesh accessengine 108 and the mesh repair engine 110 as examples. However, variousother implementation options by systems are possible.

In implementing the logic 400, the mesh access engine 108 may access aboundary representation of an object design (402). The accessed boundaryrepresentation may include any number of defects, for example slit orgash defects with size smaller than a mesh resolution of the boundaryrepresentation, inconsistently oriented facets, non-manifold facets,overlapping facets, or any combination thereof. As noted herein, suchdefects may be specific to boundary representations and caused by errorsin mesh generation algorithms, inaccurate base data, and the like.

In implementing the logic 400, the mesh repair engine 110 may repair theboundary representation (404), including according to any of the spatialdecomposition-based repair features described herein. For instance, themesh repair engine 110 may convert the boundary representation into aspatial decomposition representation of the object design (406) and thenconvert the spatial decomposition representation of the object designback into a boundary representation form to obtain a repaired boundaryrepresentation of the object design (408).

The logic 400 shown in FIG. 4 provides illustrative examples by which acomputing system 100 may support spatial decomposition-based repair ofdefects in boundary representations. Additional or alternative steps inthe logic 400 are contemplated herein, for example according to any ofthe features described herein for the mesh access engine 108, the meshrepair engine 110, or any combinations thereof.

FIG. 5 shows an example of a computing system 500 that supports spatialdecomposition-based repair of defects in boundary representations. Thecomputing system 500 may include a processor 510, which may take theform of a single or multiple processors. The processor(s) 510 mayinclude a central processing unit (CPU), microprocessor, or any hardwaredevice suitable for executing instructions stored on a machine-readablemedium. The system 500 may include a machine-readable medium 520. Themachine-readable medium 520 may take the form of any non-transitoryelectronic, magnetic, optical, or other physical storage device thatstores executable instructions, such as the mesh access instructions 522and the mesh repair instructions 524 shown in FIG. 5. As such, themachine-readable medium 520 may be, for example, Random Access Memory(RAM) such as a dynamic RAM (DRAM), flash memory, spin-transfer torquememory, an Electrically-Erasable Programmable Read-Only Memory (EEPROM),a storage drive, an optical disk, and the like.

The computing system 500 may execute instructions stored on themachine-readable medium 520 through the processor 510. Executing theinstructions (e.g., the mesh access instructions 522 and/or the meshrepair instructions 524) may cause the computing system 500 to performany of the spatial decomposition-based repair features described herein,including according to any of the features with respect to the meshaccess engine 108, the mesh repair engine 110, or a combination of both.

For example, execution of the mesh access instructions 522 by theprocessor 510 may cause the computing system 500 to access a boundaryrepresentation of an object design, the boundary representationincluding a defect. Execution of the mesh repair instructions 524 by theprocessor 510 may cause the computing system 500 to repair the boundaryrepresentation, including by converting the boundary representation intoa spatial decomposition representation of the object design as well asconverting the spatial decomposition representation of the object designback into a boundary representation form to obtain a repaired boundaryrepresentation of the object design.

Any additional or alternative features as described herein may beimplemented via the mesh access instructions 522, mesh repairinstructions 524, or a combination of both.

The systems, methods, devices, and logic described above, including themesh access engine 108 and the mesh repair engine 110, may beimplemented in many different ways in many different combinations ofhardware, logic, circuitry, and executable instructions stored on amachine-readable medium. For example, the mesh access engine 108, themesh repair engine 110, or combinations thereof, may include circuitryin a controller, a microprocessor, or an application specific integratedcircuit (ASIC), or may be implemented with discrete logic or components,or a combination of other types of analog or digital circuitry, combinedon a single integrated circuit or distributed among multiple integratedcircuits. A product, such as a computer program product, may include astorage medium and machine-readable instructions stored on the medium,which when executed in an endpoint, computer system, or other device,cause the device to perform operations according to any of thedescription above, including according to any of the described featuresfor the mesh access engine 108, the mesh repair engine 110, orcombinations thereof.

The processing capability of the systems, devices, and engines describedherein, including the mesh access engine 108 and the mesh repair engine110, may be distributed among multiple system components, such as amongmultiple processors and memories, optionally including multipledistributed processing systems or cloud/network elements. Parameters,databases, and other data structures may be separately stored andmanaged, may be incorporated into a single memory or database, may belogically and physically organized in many different ways, and may beimplemented in many ways, including data structures such as linkedlists, hash tables, or implicit storage mechanisms. Programs may beparts (e.g., subroutines) of a single program, separate programs,distributed across several memories and processors, or implemented inmany different ways, such as in a library (e.g., a shared library).

While various examples have been described above, many moreimplementations are possible.

1. A method comprising: by a computing system: accessing a boundaryrepresentation of an object design, the boundary representationincluding a defect; and repairing the boundary representation withoutdetermining a location of the defect in the boundary representation,including by: converting the boundary representation into a spatialdecomposition representation of the object design; and converting thespatial decomposition representation of the object design back into aboundary representation form to obtain a repaired boundaryrepresentation of the object design.
 2. The method of claim 1,comprising repairing the boundary representation without expresslyidentifying the defect in the boundary representation.
 3. (canceled) 4.The method of claim 1, wherein the defect comprises a slit defect withsize smaller than a mesh resolution of the boundary representation, aninconsistently oriented facet, a non-manifold facet, overlapping facets,or any combination thereof.
 5. The method of claim 4, comprisingremoving the defect from the object design through the converting of theboundary representation into the spatial decomposition representation.6. The method of claim 1, wherein the boundary representation and therepaired boundary representation have different mesh facet layouts. 7.The method of claim 1, comprising converting the spatial decompositionrepresentation of the object design into the repaired boundaryrepresentation at a different mesh resolution from the boundaryrepresentation.
 8. A system comprising: a mesh access engine configuredto access a boundary representation of an object design, the boundaryrepresentation including a defect; and a mesh repair engine configuredto repair the boundary representation without determining a location ofthe defect in the boundary representation, including by: converting theboundary representation into a spatial decomposition representation ofthe object design; and converting the spatial decompositionrepresentation of the object design back into a boundary representationform to obtain a repaired boundary representation of the object design.9. The system of claim 8, wherein the mesh repair engine is configuredto repair the boundary representation without expressly identifying thedefect in the boundary representation.
 10. (canceled)
 11. The system ofclaim 8, wherein the defect comprises a slit defect with size smallerthan a mesh resolution of the boundary representation, an inconsistentlyoriented facet, a non-manifold facet, overlapping facets, or anycombination thereof.
 12. The system of claim 11, wherein the mesh repairengine is configured to remove the defect from the object design throughthe converting of the boundary representation into the spatialdecomposition representation.
 13. The system of claim 8, wherein theboundary representation and the repaired boundary representation havedifferent mesh facet layouts.
 14. The system of claim 8, wherein themesh repair engine is configured to convert the spatial decompositionrepresentation of the object design into the repaired boundaryrepresentation at a different mesh resolution from the boundaryrepresentation.
 15. A non-transitory machine-readable medium comprisinginstructions that, when executed by a processor, cause a computingsystem to: access a boundary representation of an object design, theboundary representation including a defect; and repair the boundaryrepresentation without determining a location of the defect in theboundary representation, including by: converting the boundaryrepresentation into a spatial decomposition representation of the objectdesign; and converting the spatial decomposition representation of theobject design back into a boundary representation form to obtain arepaired boundary representation of the object design.
 16. Thenon-transitory machine-readable medium of claim 15, wherein theinstructions, when executed, cause the computing system to repair theboundary representation without expressly identifying the defect in theboundary representation.
 17. The non-transitory machine-readable mediumof claim 15, wherein the defect comprises a slit defect with sizesmaller than a mesh resolution of the boundary representation, aninconsistently oriented facet, a non-manifold facet, overlapping facets,or any combination thereof.
 18. The non-transitory machine-readablemedium of claim 17, wherein the instructions, when executed, cause thecomputing system to remove the defect from the object design through theconverting of the boundary representation into the spatial decompositionrepresentation.
 19. The non-transitory machine-readable medium of claim15, wherein the boundary representation and the repaired boundaryrepresentation have different mesh facet layouts.
 20. The non-transitorymachine-readable medium of claim 15, wherein the instructions, whenexecuted, cause the computing system to convert the spatialdecomposition representation of the object design into the repairedboundary representation at a different mesh resolution from the boundaryrepresentation.